package cn.edu.zzuli.nothinglink.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author suzyyy
 * @since 2021-04-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Classes implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "class_id", type = IdType.AUTO)
    private Integer classId;

    /**
     * 专业名称
     */
    private String className;

    /**
     * 所属年级
     */
    private String classSession;

    /**
     * 也就是1班，2班，3班这种序号
     */
    private String classNumber;

    /**
     * 班级人数，一般不会超过两位数
     */
    private Integer classStuNumber;

    /**
     * 可能会有些冗余，但是为了方便回显，总的来说就是专业名称+所属年纪+班级序号。
     */
    private String classRealName;

    /**
     * 所属学院
     */
    private String classCollege;

    /**
     * 班级URL，用于bind 学生
     */
    private String classUrl;

    /**
     * 创建的老师id
     */
    private Integer belongTeaId;

    /**
     * 班级限制人数
     */
    private Integer classLimitNumber;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

    /**
     * 逻辑删除
     */
//    @TableLogic
    private Integer deleted;

    /**
     * 创建该班级的老师名字
     * 排除映射，数据库并没有该字段
     */
    @TableField(exist = false)
    private String teaName;


}
